Systems and methods for conducting commerce via an electronic means, such as a computer network are commonplace. Some such systems have been used to coordinate entities involved in manufacturing, procuring, distributing, supplying, repairing, and returning products and parts. Previously developed techniques may have been custom tailored to individual commercial activities and are commonly, but not always, oriented towards trade. Previous techniques have also not been adaptable to provide a versatile system capable of supporting a wide range, and, more importantly, a dynamic range of providers of raw materials, goods and, sometimes, related services.
For example, personal computer manufacturers may offer many series of computer models, that can be individually configured with board level, drive level or similar subsystems, each of which may have dozens or thousands of components having multiple layers of assembly and permutation. These components themselves may involve complex supply chains, which must be organized, not merely for production, but also for providing spare parts for servicing, supplies for product development, and ad hoc needs. The requirements for components may continually change as the technology evolves so that parts and models are introduced and obsoleted in quick succession.
A traditional approach to the problem of managing a supply chain is vertical integration. Vertical integration essentially allows in-house service to be supplied with minimal tracking or internal accounting when both “vendor” and “consumer” belong to the same enterprise. Vertical integration, however, is unfeasible for any but the largest enterprises when the product is complex and large volume. Even for giant corporations, it is easy to be overwhelmed by ever growing complexity, expectations and sheer size not to mention an ongoing drive towards more efficiency and accountability of many operational business units.
Moreover, vertically integrated business models are rapidly giving way to outsourcing. Oftentimes, OEMs (original equipment manufacturers) respond to cost and competitive issues by divesting operations and outsourcing key functions, such as manufacturing, distribution, logistics, service, and inventory management. The rationale behind outsourcing is to focus on core competencies, and to transfer responsibility for other activities to service providers who can enjoy, and share, the benefits of their own economies of scale and scope.
Outsourcing has delivered significant financial value (and sometimes, unexpected financial opportunities and/or problems) to both the OEMs and the growing clusters of companies that support them. However, outsourcing, along with globalization and system/application proliferation, has also caused an increase in administrative complexity across supply chains. Responses to such issues have included initiatives for enterprise and collaborative planning across supply chain networks.
Initiatives in outsourcing and collaborative planning have exposed a critical flaw in today's extended supply chains: specifically that they are not configured for efficient execution. Ostensibly, efficient execution is typical for companies that are vertically integrated. Thus, managing a supply chain has become a task of near exponentially growing complexity that enterprise-focused systems cannot adequately support. Furthermore, collaborative planning solutions, though useful, fail to coordinate execution across supply chains.
Computer architectures for online electronic commerce have been developed using, for example, the Internet as a transport mechanism to transmit data representing purchase (and similar) requests between a proprietary browser and server product pair. However, such computer architectures have resulted in further complexity and have failed to adequately address the need for efficiency.
For example, Netscape Communications Corporation uses its Navigator/Netsite World Wide Web (WWW) browser/server pair. A buyer may use a Navigator to select a seller's “Netsite Server” (a form of electronic storefront), which is in turn coupled to ordinary application server computers (back-end subsystems), e.g., a credit server or a member server for collecting demographic information on customers. Such servers may contain representations of business rules that are defined by the seller (but are subject to external constraints). Some of these servers are connected to external third-party services, for example, the credit server may be connected to an external credit card processing network. The actual commerce applications are typically represented as being extensions of the application servers. Such application server computers, or application servers for short, are said to be instantiated in the applications. An outcome of such approaches is that business rules (which may be from the application servers) are bound together with the application logic. Thus, such a system meets required levels of efficiency only at the undesirable cost of inflexibility as to business rules of the participants (typically partners) and is inadequate in the present context.
Wide ranges of verifications may be required for various electronic commerce transactions. For example, verification of a buyer's credit or legal standing to place an order, or verification of a seller's ability to deliver the desired item may be required. Previously developed systems do not readily support diverse and dynamically evolving verification requirements and other implications of local and distant business policies, laws and so on.
In systems where the business policies and rules must be determined in advance, changing them can be inefficient and may create interruptions in service. One prior approach is the use of client-server systems, but this too often leads to a situation of unbounded growth in the complexity of the supply chain operations. This results in a problem of “business logic everywhere” having to be skillfully coordinated for changes—a typical result is inefficiency in operation, inefficiency in changing to accommodate evolving needs and general lack of robustness.
Another previously developed approach involves the use of a distributed inference engine. But such systems may be inefficient. Furthermore, design and implementation of such systems is a highly skilled art and very complex. Moreover in such a system there are serious problems as to proving correctness of actions for audit purposes. Moving away from vertical integration typically increases the need for audit activities.
Commonly, the failure of such systems to be sufficiently flexible is highlighted when there is a need to accommodate a new participant (e.g. supplier, manufacturer or customer) in a supply chain, and the new participant has its own requirements, rules and pre-existing procedures.
Thus, a need exists for effective coordination of execution of business policies across networks even as service and lead-time and other requirements evolve and participants therein come and go.